<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>函数</title>
</head>
<body>
1. 什么是函数
    * 实现特定功能的n条语句的封装体
    * 只有函数时可以执行的，其他类型的数据不能执行
2. 为啥要用
    * 提高了代码的复用
    * 便于程序员间的交流
3. 如果定义函数
    * 函数声明：function show(){}
    * 表达式: var show = function(){}
4. 如何调用(执行)函数
    * test(): 直接调用
    * obj.test(): 写入对象
    * new test(): new调用
    * test.call/apply(obj): 临时让test成为对象obj的方法进行调用
<script>
    /**
     * 功能：
     *  1. 根据年龄输出对应信息
     *  2. 如果小于18，输出未成年
     *  3. 如果大于60，输出算了吧
     *  4. 其他，真好
     */
    function showInfo(age) {
        switch (age){
            case age < 18: console.log('未成年');break;
            case age > 60: console.log('算了');break;
            default: console.log('真好');break;
        }
    }
    showInfo(50);

    function fn1() {
        console.log('fun1')
    };
    var fn2 = function () {
        console.log('fn2')
    }
    fn1();
    fn2();

    //js中可以调用在某个对象中没有的方法，js特有
    var obj = {};
    function test() {
        this.aaa = 'cwx';
    }
    //obj.test();//报错，obj对象中没有方法：test
    test.call(obj);//test.apply(obj); 同样效果
</script>
</body>
</html>